系统安全常见的一些问题
系统安全常见的一些问题有以下这些:
系统的体系结构造成系统本身不保密。这是计算机系统不保密的根本原因。系统的程序可以动态链接,包括输入输出的驱动程序与系统服务,可以用打补丁的方式进行动态链接。这种方法厂商可以使用,黑客同样也可以使用,所以动态链接是计算机病毒寄存的有利环境。
系统可以在网络的节点上创建和激活远程进程,支持被创建的进程继续原创建进程的权限。这两点结合起来就构成了可以在远端服务器上安装隐患软件的条件。这种隐患软件可以以打补丁的方式放在一个合法的用户上,尤其是放在一个特权用户上,并且使系统进程与作业的监视程序都监测不到它的存在。
系统通常都提供守护进程。它们总是在等待一些条件的出现,一旦有满足要求的条件出现,程序便继续运行下去。这样的软件可以被黑客所利用。
系统支持在网络上传输文件,包括可执行的映像文件,即在网络上加载程序,这就为黑客提供了方便。系统提供远程过程调用服务,其服务本身也存在一些被非法用户利用的漏洞。
系统提供调试器与向导。一些软件研制人员的基本技能就是开发补丁程序和系统调试器,掌握了这两种技术就有条件做黑客要做的事情。
系统安排的无口令入口是为系统开发人员提供的便捷入口,但它也是黑客的通道。
系统安全加固可以从以下方面入手:
端口和进程:网络操作系统使用进程向外提供服务,减少无用软件及服务的任务就是要在所有系统进程中找出多余进程。由于进程通过打开网络端口向外提供服务,所以找出多余进程的最快方法是观察进程及端口对应表。Netstat命令显示协议统计和当前的TCP/IP网络连接,该命令只有在安装了TCP/IP协议后才可以使用。通过使用该命令可以列出一个系统上所有打开的TCP/IP网络监听端口。这些打开着的端口正是入侵者所要攻击的,因为它们通向系统平台内部。因此,作为平台加固的一部分,用户使用Netstat命令来识别出无关端口,并由此找到需要删除或禁用的服务。
安装系统补丁:所有软件都有缺陷。为了修复这些错误,供应商会发布软件补丁。如果没有这些补丁,组织很容易遭受攻击。在有很严格的更改控制策略的组织中,及时安装补丁会是一个问题。对补丁的彻底测试是这个过程的关键部分,因为供应商在解决旧问题时,有可能会引入新的问题。而对于和安全缺陷无关的补丁来说没有问题。但是,入侵者搜索和利用安全弱点的速度很快,所以要求有更快的安全补丁修正过程。企业必须注意安全补丁的发布,并随时准备快速地使用它们。
用户账户:用户账户标识了需要访问平台资源的实体(无论是应用程序进程还是人)。操作系统通过权限和优先权将用户账户与其访问控制系统相关联。因为用户账户是合法进入系统的机制,所以入侵者常常试图利用用户账户管理和访问控制中的缺陷。如果可以作为合法用户轻松地登录系统,那么为什么还要浪费时间去做自定义缓冲器溢出攻击呢?用户账户管理的弱点有5个方面:弱密码、制造商默认的账户、基于角色的账户、公司默认账户,以及废弃账户。在任何情况下,平台加固的目标是将用户账户数目减少到所需的绝对最小值。
用户特权:为每一个用户指派通常只能作为超级用户运行的特定的应用程序和功能,而不是真正地使用超级用户账户。也可以启用详细的日志记录,使得可以根据任何运行于超级用户功能追踪到某个特定的用户。在特定的应用中,意味着没有人使用过超级用户账户。
文件系统安全:通过在程序文件上设置SUID标志,某一个进程可以临时提升其特权用以完成某项任务(例如,访问文件passwd)。当程序执行时,可以暂时得到这些额外的特权而不用被全授予如此高的特权。这个SUID标志常常过度使用,当它与被黑客修改过的软件包结合时,被修改的程序执行后会使某个用户得到全时提升的系统权利。UNIX系统可能有很多带有这个标志的组件,但是通常只需要它们中的一小部分。建议使用命令从整个系统中删除不需要SUID标志程序的SUID标志。
远程访问的安全:Telnet和rlogin是UNIX系统上最常用的远程访问方式。这些系统都不采用加密技术来保护远程访问会话。一种被动的网络监听攻击可以看到用户在进入Telnet或者rlogin会话中按下的每一个键。安全Shell(SSH)是一种在UNIX及Window系统上使用的软件包,它提供与Telnet和rlogin相同功能,但增加了加密会话功能。这个软件包已经成为用加密和访问控制的各种可配置级别进行安全远程访问的行业标准。